﻿using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Rendiciones.Logica.Enumeradores;
using Rendiciones.Logica.Modelos;
using Rendiciones.Logica.Servicios;
using Rendiciones.Web.infraestructura;

namespace Rendiciones.Web.Gerente
{
    public partial class MisAprobados : PageBase
    {
        public Usuario usuario;
        private static ServGastos _servGastos;
        protected void Page_Load(object sender, EventArgs e)
        {

            if (!IsPostBack)
            {
                usuario = (Usuario)Session["usuario"];
                if (usuario == null) Response.Redirect("~/IniciarSesion.aspx");
                Cargar();
            }
        }

        public void Cargar()
        {
            try
            {
                LimpiarErrores(pnlAprobados);
                _servGastos = new ServGastos();
                var rendicionesPendientes = _servGastos.BuscarRendicionesPorEstado(6, UsuarioConectado.IdUsuario, (int)ERol.Administrador);
                var rendicionesEstado7 = _servGastos.BuscarRendicionesPorEstado(7, UsuarioConectado.IdUsuario, (int)ERol.Administrador);
                var rendicionesEstado8 = _servGastos.BuscarRendicionesPorEstado(8, UsuarioConectado.IdUsuario, (int)ERol.Administrador);
                rendicionesEstado7.ForEach(rendicionesPendientes.Add);
                rendicionesEstado8.ForEach(rendicionesPendientes.Add);

                grAprobados.DataSource = rendicionesPendientes;
                grAprobados.DataBind();
                lblTotal.Text = grAprobados.Rows.Count.ToString(CultureInfo.InvariantCulture) + " Registros encontrados.";
            }
            catch (Exception exception)
            {
                MuestraMensajeError(grAprobados, "<strong>Error:</strong> " + exception.Message);
            }
        }
    }
}